// banner
export interface IBanner {
  pic: string;
  targetId: number;
  adid: null;
  targetType: number;
  titleColor: string;
  typeTitle: string;
  url: null | string;
  adurlV2: null;
  exclusive: boolean;
  monitorImpress: null;
  monitorClick: null;
  monitorType: null;
  monitorImpressList: any[];
  monitorClickList: any[];
  monitorBlackList: null;
  extMonitor: null;
  extMonitorInfo: null;
  adSource: null;
  adLocation: null;
  encodeId: string;
  program: null;
  event: null;
  video: null;
  dynamicVideoData: null;
  song: null;
  bannerId: string;
  alg: string;
  scm: string;
  requestId: string;
  showAdTag: boolean;
  pid: null;
  showContext: null;
  adDispatchJson: null;
  s_ctrp: string;
  logContext: null;
}

// banner
export interface IBannerRes {
  banners: IBanner[];
  code: number;
}

// song list
export interface ISongList {
  id: number;
  type: number;
  name: string;
  copywriter: string;
  picUrl: string;
  canDislike: boolean;
  trackNumberUpdateTime: number;
  playCount: number;
  trackCount: number;
  highQuality: boolean;
  alg: string;
}

// song list
export interface ISongListRes {
  hasTaste: boolean;
  code: number;
  category: number;
  result: ISongList[];
}

// 作者
export interface INewSongItemArtists{
  id: number,
  name: string,
}

// new song item
export interface INewSongItem{
  id: number,
  name: string,
  artists: INewSongItemArtists[]
}

// new song list
export interface INewSongList{
  id: number,
  type: number,
  name: string,
  picUrl: string,
  canDislike: boolean,
  song: INewSongItem
}

// new song
export interface INewSongRes{
  code: number
  category: number
  result: INewSongList[]
}
